
a.out:     file format elf64-x86-64


Disassembly of section .init:

00000000004004c0 <_init>:
  4004c0:	48 83 ec 08          	sub    $0x8,%rsp
  4004c4:	48 8b 05 2d 0b 20 00 	mov    0x200b2d(%rip),%rax        # 600ff8 <__gmon_start__>
  4004cb:	48 85 c0             	test   %rax,%rax
  4004ce:	74 05                	je     4004d5 <_init+0x15>
  4004d0:	e8 3b 00 00 00       	callq  400510 <.plt.got>
  4004d5:	48 83 c4 08          	add    $0x8,%rsp
  4004d9:	c3                   	retq   

Disassembly of section .plt:

00000000004004e0 <.plt>:
  4004e0:	ff 35 22 0b 20 00    	pushq  0x200b22(%rip)        # 601008 <_GLOBAL_OFFSET_TABLE_+0x8>
  4004e6:	ff 25 24 0b 20 00    	jmpq   *0x200b24(%rip)        # 601010 <_GLOBAL_OFFSET_TABLE_+0x10>
  4004ec:	0f 1f 40 00          	nopl   0x0(%rax)

00000000004004f0 <__libc_start_main@plt>:
  4004f0:	ff 25 22 0b 20 00    	jmpq   *0x200b22(%rip)        # 601018 <__libc_start_main@GLIBC_2.2.5>
  4004f6:	68 00 00 00 00       	pushq  $0x0
  4004fb:	e9 e0 ff ff ff       	jmpq   4004e0 <.plt>

0000000000400500 <_Z5printPKc@plt>:
  400500:	ff 25 1a 0b 20 00    	jmpq   *0x200b1a(%rip)        # 601020 <_Z5printPKc>
  400506:	68 01 00 00 00       	pushq  $0x1
  40050b:	e9 d0 ff ff ff       	jmpq   4004e0 <.plt>

Disassembly of section .plt.got:

0000000000400510 <.plt.got>:
  400510:	ff 25 e2 0a 20 00    	jmpq   *0x200ae2(%rip)        # 600ff8 <__gmon_start__>
  400516:	66 90                	xchg   %ax,%ax

Disassembly of section .text:

0000000000400520 <_start>:
  400520:	31 ed                	xor    %ebp,%ebp
  400522:	49 89 d1             	mov    %rdx,%r9
  400525:	5e                   	pop    %rsi
  400526:	48 89 e2             	mov    %rsp,%rdx
  400529:	48 83 e4 f0          	and    $0xfffffffffffffff0,%rsp
  40052d:	50                   	push   %rax
  40052e:	54                   	push   %rsp
  40052f:	49 c7 c0 a0 06 40 00 	mov    $0x4006a0,%r8
  400536:	48 c7 c1 30 06 40 00 	mov    $0x400630,%rcx
  40053d:	48 c7 c7 0d 06 40 00 	mov    $0x40060d,%rdi
  400544:	e8 a7 ff ff ff       	callq  4004f0 <__libc_start_main@plt>
  400549:	f4                   	hlt    
  40054a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

0000000000400550 <deregister_tm_clones>:
  400550:	b8 37 10 60 00       	mov    $0x601037,%eax
  400555:	55                   	push   %rbp
  400556:	48 2d 30 10 60 00    	sub    $0x601030,%rax
  40055c:	48 83 f8 0e          	cmp    $0xe,%rax
  400560:	48 89 e5             	mov    %rsp,%rbp
  400563:	77 02                	ja     400567 <deregister_tm_clones+0x17>
  400565:	5d                   	pop    %rbp
  400566:	c3                   	retq   
  400567:	b8 00 00 00 00       	mov    $0x0,%eax
  40056c:	48 85 c0             	test   %rax,%rax
  40056f:	74 f4                	je     400565 <deregister_tm_clones+0x15>
  400571:	5d                   	pop    %rbp
  400572:	bf 30 10 60 00       	mov    $0x601030,%edi
  400577:	ff e0                	jmpq   *%rax
  400579:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)

0000000000400580 <register_tm_clones>:
  400580:	b8 30 10 60 00       	mov    $0x601030,%eax
  400585:	55                   	push   %rbp
  400586:	48 2d 30 10 60 00    	sub    $0x601030,%rax
  40058c:	48 c1 f8 03          	sar    $0x3,%rax
  400590:	48 89 e5             	mov    %rsp,%rbp
  400593:	48 89 c2             	mov    %rax,%rdx
  400596:	48 c1 ea 3f          	shr    $0x3f,%rdx
  40059a:	48 01 d0             	add    %rdx,%rax
  40059d:	48 d1 f8             	sar    %rax
  4005a0:	75 02                	jne    4005a4 <register_tm_clones+0x24>
  4005a2:	5d                   	pop    %rbp
  4005a3:	c3                   	retq   
  4005a4:	ba 00 00 00 00       	mov    $0x0,%edx
  4005a9:	48 85 d2             	test   %rdx,%rdx
  4005ac:	74 f4                	je     4005a2 <register_tm_clones+0x22>
  4005ae:	5d                   	pop    %rbp
  4005af:	48 89 c6             	mov    %rax,%rsi
  4005b2:	bf 30 10 60 00       	mov    $0x601030,%edi
  4005b7:	ff e2                	jmpq   *%rdx
  4005b9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)

00000000004005c0 <__do_global_dtors_aux>:
  4005c0:	80 3d 65 0a 20 00 00 	cmpb   $0x0,0x200a65(%rip)        # 60102c <_edata>
  4005c7:	75 11                	jne    4005da <__do_global_dtors_aux+0x1a>
  4005c9:	55                   	push   %rbp
  4005ca:	48 89 e5             	mov    %rsp,%rbp
  4005cd:	e8 7e ff ff ff       	callq  400550 <deregister_tm_clones>
  4005d2:	5d                   	pop    %rbp
  4005d3:	c6 05 52 0a 20 00 01 	movb   $0x1,0x200a52(%rip)        # 60102c <_edata>
  4005da:	f3 c3                	repz retq 
  4005dc:	0f 1f 40 00          	nopl   0x0(%rax)

00000000004005e0 <frame_dummy>:
  4005e0:	48 83 3d f8 07 20 00 	cmpq   $0x0,0x2007f8(%rip)        # 600de0 <__JCR_END__>
  4005e7:	00 
  4005e8:	74 1e                	je     400608 <frame_dummy+0x28>
  4005ea:	b8 00 00 00 00       	mov    $0x0,%eax
  4005ef:	48 85 c0             	test   %rax,%rax
  4005f2:	74 14                	je     400608 <frame_dummy+0x28>
  4005f4:	55                   	push   %rbp
  4005f5:	bf e0 0d 60 00       	mov    $0x600de0,%edi
  4005fa:	48 89 e5             	mov    %rsp,%rbp
  4005fd:	ff d0                	callq  *%rax
  4005ff:	5d                   	pop    %rbp
  400600:	e9 7b ff ff ff       	jmpq   400580 <register_tm_clones>
  400605:	0f 1f 00             	nopl   (%rax)
  400608:	e9 73 ff ff ff       	jmpq   400580 <register_tm_clones>

000000000040060d <main>:
  40060d:	55                   	push   %rbp
  40060e:	48 89 e5             	mov    %rsp,%rbp
  400611:	48 83 ec 10          	sub    $0x10,%rsp
  400615:	48 c7 45 f8 c0 06 40 	movq   $0x4006c0,-0x8(%rbp)
  40061c:	00 
  40061d:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
  400621:	48 89 c7             	mov    %rax,%rdi
  400624:	e8 d7 fe ff ff       	callq  400500 <_Z5printPKc@plt>
  400629:	b8 00 00 00 00       	mov    $0x0,%eax
  40062e:	c9                   	leaveq 
  40062f:	c3                   	retq   

0000000000400630 <__libc_csu_init>:
  400630:	41 57                	push   %r15
  400632:	41 89 ff             	mov    %edi,%r15d
  400635:	41 56                	push   %r14
  400637:	49 89 f6             	mov    %rsi,%r14
  40063a:	41 55                	push   %r13
  40063c:	49 89 d5             	mov    %rdx,%r13
  40063f:	41 54                	push   %r12
  400641:	4c 8d 25 88 07 20 00 	lea    0x200788(%rip),%r12        # 600dd0 <__frame_dummy_init_array_entry>
  400648:	55                   	push   %rbp
  400649:	48 8d 2d 88 07 20 00 	lea    0x200788(%rip),%rbp        # 600dd8 <__init_array_end>
  400650:	53                   	push   %rbx
  400651:	4c 29 e5             	sub    %r12,%rbp
  400654:	31 db                	xor    %ebx,%ebx
  400656:	48 c1 fd 03          	sar    $0x3,%rbp
  40065a:	48 83 ec 08          	sub    $0x8,%rsp
  40065e:	e8 5d fe ff ff       	callq  4004c0 <_init>
  400663:	48 85 ed             	test   %rbp,%rbp
  400666:	74 1e                	je     400686 <__libc_csu_init+0x56>
  400668:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
  40066f:	00 
  400670:	4c 89 ea             	mov    %r13,%rdx
  400673:	4c 89 f6             	mov    %r14,%rsi
  400676:	44 89 ff             	mov    %r15d,%edi
  400679:	41 ff 14 dc          	callq  *(%r12,%rbx,8)
  40067d:	48 83 c3 01          	add    $0x1,%rbx
  400681:	48 39 eb             	cmp    %rbp,%rbx
  400684:	75 ea                	jne    400670 <__libc_csu_init+0x40>
  400686:	48 83 c4 08          	add    $0x8,%rsp
  40068a:	5b                   	pop    %rbx
  40068b:	5d                   	pop    %rbp
  40068c:	41 5c                	pop    %r12
  40068e:	41 5d                	pop    %r13
  400690:	41 5e                	pop    %r14
  400692:	41 5f                	pop    %r15
  400694:	c3                   	retq   
  400695:	90                   	nop
  400696:	66 2e 0f 1f 84 00 00 	nopw   %cs:0x0(%rax,%rax,1)
  40069d:	00 00 00 

00000000004006a0 <__libc_csu_fini>:
  4006a0:	f3 c3                	repz retq 

Disassembly of section .fini:

00000000004006a4 <_fini>:
  4006a4:	48 83 ec 08          	sub    $0x8,%rsp
  4006a8:	48 83 c4 08          	add    $0x8,%rsp
  4006ac:	c3                   	retq   
